const OSS = require('ali-oss')

const client = new OSS({
  // yourRegion填写Bucket所在地域。以华东1（杭州）为例，Region填写为oss-cn-hangzhou。
  endpoint: 'https://queue-pic.cjwenheyou.com',
  region: 'oss-cn-hangzhou',
  secure: true,
  // 从STS服务获取的临时访问密钥（AccessKey ID和AccessKey Secret）。
  accessKeyId: 'LTAI5tK1R7sYNdnwG8rMAWaX',
  accessKeySecret: 'mCHC1wxBoCcWxzxmMdcHXfUhX2npz3',
  // 从STS服务获取的安全令牌（SecurityToken）。
  //   stsToken: 'yourSecurityToken',
  // 填写Bucket名称。
  cname: true,
  bucket: 'why-queue'
})

const clientXft = new OSS({
  // yourRegion填写Bucket所在地域。以华东1（杭州）为例，Region填写为oss-cn-hangzhou。
  // endpoint: 'oss-cn-hangzhou.aliyuncs.com',
  region: 'oss-cn-hangzhou',
  // secure: true,
  // 从STS服务获取的临时访问密钥（AccessKey ID和AccessKey Secret）。
  accessKeyId: 'LTAI4GKVBvc2Z5Mi4kqS7TMu',
  accessKeySecret: 'PGlEIYyQdfVtuis9ia7eF1Fzxba95v',
  // 从STS服务获取的安全令牌（SecurityToken）。
  //   stsToken: 'yourSecurityToken',
  // 填写Bucket名称。
  // cname: true,
  bucket: '91xft-static'
})

// 从输入框获取file对象，例如<input type="file" id="file" />。
// 创建并填写Blob数据。
// const data = new Blob('Hello OSS');
// 创建并填写OSS Buffer内容。
// const data = new OSS.Buffer('Hello OSS');

export async function putObject (data, name) {
  return new Promise(async (resolve) => {
    // var name = new Date().getTime()
    try {
      // 填写Object完整路径。Object完整路径中不能包含Bucket名称。
      // 您可以通过自定义文件名（例如exampleobject.txt）或文件完整路径（例如exampledir/exampleobject.txt）的形式实现将数据上传到当前Bucket或Bucket中的指定目录。
      // data对象可以自定义为file对象、Blob数据或者OSS Buffer。
      const result = await client.put(name, data)
      resolve(result)
    } catch (e) {

    }
  })
}

export async function putObjectXft (data, name, pre) {
  return new Promise(async (resolve) => {
    // var name = new Date().getTime()
    try {
      // 填写Object完整路径。Object完整路径中不能包含Bucket名称。
      // 您可以通过自定义文件名（例如exampleobject.txt）或文件完整路径（例如exampledir/exampleobject.txt）的形式实现将数据上传到当前Bucket或Bucket中的指定目录。
      // data对象可以自定义为file对象、Blob数据或者OSS Buffer。
      const url = pre ? 'xft-cli/' + pre + '/' + name : 'xft-cli/' + name
      const result = await clientXft.put(url, data)
      resolve(result)
    } catch (e) {
      console.log(12312, e)
    }
  })
}
